home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / info-service / www / src / midaswww-1.0 / SGMLText.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-11-16  |  5.0 KB  |  160 lines

  1. /*==================================================================*/
  2. /*                                                                  */
  3. /* SGMLTextObject                                                   */
  4. /*                                                                  */
  5. /* T.Johnson - (TonyJ@Slacvx.Slac.Stanford.Edu)           June.92   */
  6. /*                                                                  */
  7. /* Defines a text segment for the SGMLText widget                   */
  8. /*                                                                  */
  9. /*==================================================================*/
  10.  
  11. #ifndef  SGMLTEXT_H
  12. #define  SGMLTEXT_H
  13.  
  14. extern WidgetClass sGMLTextObjectClass;
  15. typedef struct _SGMLTextRec  *SGMLTextObject;
  16.  
  17. #define SGMLALIGNMENT_NONE   0
  18. #define SGMLALIGNMENT_LEFT   1
  19. #define SGMLALIGNMENT_RIGHT  2
  20. #define SGMLALIGNMENT_CENTER 3
  21.  
  22. #define SGMLBREAK_NEVER 0
  23. #define SGMLBREAK_ALWAYS 2
  24. #define SGMLBREAK_SOFT 1
  25.  
  26. #define SGMLINHERIT_ALIGNMENT -999
  27. #define SGMLINHERIT_FONT    NULL
  28. #define SGMLINHERIT_MARGIN -1
  29. #define SGMLINHERIT_PARAGRAPHINDENT -999
  30. #define SGMLINHERIT_SPACE 32767
  31. #define SGMLINHERIT_BREAK -999
  32. #define SGMLINHERIT_SENSITIVITY 2
  33. #define SGMLINHERIT_UNDERLINE -999
  34. #define SGMLINHERIT_OUTLINE 2
  35. #define SGMLINHERIT_UNDERLINEHEIGHT 999
  36. #define SGMLINHERIT_COLOR NULL
  37.  
  38. #define SGMLNfont                     "font"
  39. #define SGMLNsensitiveFont            "sensitiveFont"
  40. #define SGMLCFont                     "Font"
  41. #define SGMLNcolor                    "color"
  42. #define SGMLNsensitiveColor           "sensitiveColor"
  43. #define SGMLCColor                    "Color"
  44. #define SGMLNunderline                "underline"
  45. #define SGMLNsensitiveUnderline       "sensitiveUnderline"
  46. #define SGMLCUnderline                "underline"
  47. #define SGMLNoutline                  "outline"
  48. #define SGMLNsensitiveOutline         "sensitiveOutline"
  49. #define SGMLCOutline                  "Outline"
  50. #define SGMLNunderlineHeight          "underlineHeight"
  51. #define SGMLNsensitiveUnderlineHeight "sensitiveUnderlineHeight"
  52. #define SGMLCUnderlineHeight          "underlineHeight"
  53. #define SGMLNbreakBefore              "breakBefore"
  54. #define SGMLNbreakAfter               "breakAfter"
  55. #define SGMLCBreak                    "Break"
  56. #define SGMLRBreak                    "Break"
  57. #define SGMLNsensitive                "sensitive"
  58. #define SGMLCSensitive                "Sensitive"
  59. #define SGMLNrightIndent              "rightIndent"
  60. #define SGMLNleftIndent               "leftIndent"
  61. #define SGMLNrightMargin              "rightMargin"
  62. #define SGMLNleftMargin               "leftMargin"
  63. #define SGMLNparagraphIndent          "paragraphIndent"
  64. #define SGMLNspaceBefore              "spaceBefore"
  65. #define SGMLNspaceAfter               "spaceAfter"
  66. #define SGMLCMargin                   "Margin"
  67. #define SGMLNalignment                "alignment"
  68. #define SGMLCAlignment                "Alignment"
  69. #define SGMLNspacing                  "spacing"
  70. #define SGMLCSpacing                  "Spacing" 
  71. #define SGMLNdepth                    "depth"
  72. #define SGMLCDepth                    "Depth" 
  73. #define SGMLNascent                   "ascent"
  74. #define SGMLCAscent                   "Ascent" 
  75. #define SGMLNuserdata                 "userdata"
  76. #define SGMLCUserdata                 "Userdata" 
  77.  
  78. #define SGMLNtext        "text"
  79. #define SGMLCText        "Text"
  80. #define SGMLNparam       "param"
  81. #define SGMLCParam       "param"
  82. #define SGMLNlength      "length"
  83. #define SGMLCLength      "Length"
  84. #define SGMLNparamLength "paramLength"
  85. #define SGMLCParamLength "ParamLength"
  86.  
  87. #define SGMLNactivateCallback "activateCallback"
  88. #define SGMLNcreateCallback   "createCallback"
  89. #define SGMLNmapCallback      "mapCallback"
  90. #define SGMLCCallback         "Callback" 
  91.  
  92. /*
  93.   Callback structure
  94. */
  95.  
  96. #define SGMLTEXT_ACTIVATE 1
  97. #define SGMLTEXT_CREATE 2
  98. #define SGMLTEXT_MAP 2
  99.  
  100. typedef struct {
  101.  
  102.     int     reason;   /* always = HYPER_REASON                            */
  103.     XEvent *event;    /* event                                            */
  104.     char   *text;     /* pointer on highlighted text selected (read only) */
  105.     int     length;   /* length of selected text                          */
  106.     char   *param;    /* pointer to hidden text */
  107.     int     param_length;
  108.  
  109. }  SGMLTextCallbackStruct;
  110.  
  111. /*
  112.    Other exported data structures
  113. */
  114.  
  115. typedef struct _SGMLCoord {
  116.  
  117.     Position            x,y;
  118.     Dimension           depth;
  119.     Dimension           ascent;
  120.  
  121. } SGMLCoord;     
  122.  
  123. typedef struct {
  124.  
  125.    SGMLCoord coord;
  126.    int       alignment;
  127.    Boolean   leave_space;
  128.    Boolean   broken;
  129.    Dimension space;
  130.    Dimension natural_width;
  131.    Dimension actual_width; 
  132.  
  133. } SGMLGeometry;  
  134.  
  135.  
  136. #ifdef _NO_PROTO
  137.  
  138. extern Widget  CreateSGMLText();
  139.  
  140. #else
  141.  
  142. #if defined(__cplusplus) || defined(c_plusplus)
  143. extern "C" {
  144. #endif
  145.  
  146.     extern Widget SGMLCreateText(Widget parent,
  147.         char *name,
  148.         ArgList al,
  149.         int ac);
  150.  
  151. #if defined(__cplusplus) || defined(c_plusplus)
  152. }
  153. #endif
  154.  
  155. #endif /* _NO_PROTO */
  156.  
  157. #define SGMLIsText(w)     XtIsSubclass(w,sGMLTextObjectClass)
  158.  
  159. #endif SGMLTEXT_H
  160.